.TH std::strcpy 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::strcpy \- std::strcpy

.SH Synopsis
   Defined in header <cstring>
   char* strcpy( char* dest, const char* src );

   Copies the character string pointed to by src, including the null terminator, to the
   character array whose first element is pointed to by dest.

   The behavior is undefined if the dest array is not large enough. The behavior is
   undefined if the strings overlap.

.SH Parameters

   dest - pointer to the character array to write to
   src  - pointer to the null-terminated byte string to copy from

.SH Return value

   dest

.SH Example


// Run this code

 #include <cstring>
 #include <iostream>
 #include <memory>

 int main()
 {
     const char* src = "Take the test.";
 //  src[0] = 'M'; // can't modify string literal
     auto dst = std::make_unique<char[]>(std::strlen(src) + 1); // +1 for null terminator
     std::strcpy(dst.get(), src);
     dst[0] = 'M';
     std::cout << src << '\\n' << dst.get() << '\\n';
 }

.SH Output:

 Take the test.
 Make the test.

.SH See also

   strncpy copies a certain amount of characters from one string to another
           \fI(function)\fP
   memcpy  copies one buffer to another
           \fI(function)\fP
   C documentation for
   strcpy
